package JVM.chapter04;

/**
 * 动态链接（dynamic linking）:
 *      -> 指向 “运行时常量池” 的引用
 *      -> 每一个栈帧都有一个指向常量池的引用
 *
 * dynamic linking 的原理和作用：
 *    当java源文件被编译成字节码文件的时候，所有变量和方法都会作为符号引用（Sysbolic reference）
 *    被存放到class文件的常量池中。   当一个方法调用另一个方法，实际上是通过常量池中的“符号引用”
 *    指向另一个“符号引用”。    动态链接的作用就是 将 符号引用 转换为 直接引用
 */
public class DynamicLinkingTest {
    int num = 20;

    public static void main(String[] args) {
        // 只是让 后面两个方法编译一下
    }

    public void methodA(){
        System.out.println("methodA()......");
    }

    public void methodB(){
        System.out.println("methodB().....");

        methodA();

        num++;
    }
}
